/**
   \file  file_utils.hh
   \brief File system related functions.

   Various high-level functions encapsulating the underlying filesystem
   API. These functions either wrap around Boost.Filesystem or fallback
   to using the Unix API.
*/

/*
   This file is part of libgist.

   libgist is free software; you can redistribute it and/or modify it
   under the terms of the GNU General Public License as published by the
   Free Software Foundation; either version 2 of the License, or (at your
   option) any later version.

   libgist is distributed in the hope that it will be useful, but WITHOUT
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
   for more details.

   You should have received a copy of the GNU General Public License
   along with libgist; if not, write to the Free Software Foundation,
   Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/

/*
   REVISION HISTORY

   $HeadURL: http://libgist.googlecode.com/svn/branches/wu_dev/drv/file_utils.hh $
   $Id: file_utils.hh 42 2011-08-22 10:51:07Z libgist@gmail.com $
*/

#ifndef GISTDRV_FILESYSTEM_UTILITIES_DOT_HH
#define GISTDRV_FILESYSTEM_UTILITIES_DOT_HH

//------------------------------ HEADERS --------------------------------

// Standard C++ headers
#include <string>

//----------------------------- NAMESPACE -------------------------------

namespace gistdrv {

//---------------------------- PATH TESTS -------------------------------

/**
   \brief  Check if given path exists.
   \param  path Full or relative path to be checked for existence.
   \return True if path exists; false otherwise.

   This function returns true if the given path name refers to an extant
   file or directory.
*/
bool exists(const std::string& path) ;

//-----------------------------------------------------------------------

} // end of namespace encapsulating this file's definitions

#endif

/* So things look consistent in everyone's emacs... */
/* Local Variables: */
/* indent-tabs-mode: nil */
/* End: */
